home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 3.2 / Ham Radio Version 3.2 (Chestnut CD-ROMs)(1993).ISO / rtty / tlmdc / read.me < prev    next >
Text File  |  1990-01-30  |  9KB  |  187 lines

  1. Howdy:
  2.  
  3. THIS CODE IS INTENDED FOR AMSAT USE and PRIVATE USE ONLY.  YOU MAY
  4. RE-DISTRIBUTE FAR AND WIDE BUT CHARGE NO MONEY, NOT EVEN HANDLING
  5. FEES.  COMMERCIAL USE OF THIS CODE IS ABSOLUTELY PROHIBITED WITHOUT
  6. PERMISSION OF THE AUTHOR.  THIS CODE MAY NOT BE USED AS THE BASIS
  7. OF ANY PROGRAM THAT WILL BE SOLD, BARTERED, OR IN ANY WAY TRADED
  8. FOR GAIN WITHOUT THE PERMISSION OF THE AUTHOR. (Not that I can
  9. figure out why anybody would, just thought I'd protect AMSAT a bit).
  10.  
  11. NO WARRANTY and AS is what you got.  What you see is what you get.
  12.  
  13. Here at long last is the RUDIMENTARY telemetry decoder WITH SOURCE (much
  14. good as that will do you).  The program operation is simple.  YOU MUST
  15. BE RUNNING KISS in your tnc.  I tried various ways of handling the
  16. straight ascii stuff and finally threw up my hands with the exceptions
  17. that will surely creep in the first upload and gave up on it.  There
  18. are four main functions selected by touching a key.  They are
  19.  
  20.     D = Toggle Dump, T = Tlm Decode, F = Decode File, Q = Quit
  21.  
  22. as seen from the main page.  D dumps the incoming frames (all of them)
  23. to a file.  Both a raw data file and an ascii file are required (make
  24. sure FILES= NN etc. in your config.sys are bigger than 2 ;-).  You will
  25. be prompted for them.  While you are seeing the frames on the main page,
  26. or decoding telemetry, the data will be dumped.  T starts decoding
  27. the telemetry and F will decode the frames from a previously captured
  28. RAW data file, and Q leaves the program.  The ascii data file is primarily
  29. for you to be able to eyeball the stuff that came in.  The raw file is
  30. of course full of unprintable characters (shifted address characters,
  31. control info, etc.).
  32.  
  33. Equipment,etc. required:  I have run this on an 8 Mhz XT WITHOUT 8087 and
  34. it kept up with the data, etc.  I have run it on a 4.77 Mhz position on
  35. my AT, and it did NOT keep up with the data, even using the 80287 in the
  36. decode.  I MAKE NO GREAT CLAIMS FOR THE EFFICIENCY OF THE AX.25 algorithm
  37. and I hope that somebody else will jump in and do a better one.  No graphics
  38. cards are required.  No full duplex is required in the KISS as this is
  39. listen ONLY.  So, at least 8 Mhz XT, TNC running KISS, a PSK modem for
  40. all but DOVE and regular BEL-202 for DOVE.
  41.  
  42. ************************
  43. MBBIOS is no longer required unless you have some other than COM1 and COM2.
  44. I have written rudimentary interrupt handlers with large buffers in
  45. serial.c  This code could supports both com1 and com2.  It is written
  46. for simplicity and not elegance.  It does NOT handle framing errors,
  47. or overruns or any such nonsense.  I MAY add all that in the future.
  48. These interrupt handlers are short and sweet and should be informative
  49. to those who have never written one.  I am TSR friendly.  By that I mean
  50. that I hand back.
  51.  
  52. IF YOU MUST BE RUNNING MBBIOS, then you must replace serial.c with tmp.c
  53. and recompile.  I do not know how to write serial I/O handlers for COM3
  54. and COM4.  If someone wishes to hand me a basic roadmap or the code to
  55. do the same, then I will add it.  You may get MBBIOS from DL9 on CI$ on
  56. HAMNET or pull MBB33.ARC from DRIG (the AMSAT BBS).  Read the MBBIOS
  57. instructions to set it up.
  58.  
  59. YOU MUST BE RUNNING KISS IN YOUR TNC to capture live data.
  60.  
  61. ************************
  62.  
  63. Operation:
  64.  
  65. The program comes dialed in for COM1:9600,N,8,1.  You may change the
  66. speed on the command line but you may not change the port unless you
  67. recompile the source.  This is Microsoft C^tm  5.1 (_set and _clear etc.
  68. are in the Microsoft libraries and self explanatory).  To change the
  69. speed at which the serial port is run, when you bring the program up
  70. type
  71.  
  72. tlmdc COM1:4800,N,8,1
  73.  
  74. (,N,8,1 is mandatory!)
  75.  
  76. This will set it up at 4800 bps.  At 2400 BPS you are really pretty
  77. slow and at 1200, I have my doubts whether or not you will stay ahead
  78. of WEBER's long telemetry list if you are on 8 Mhz XT without coprocessor.
  79.  
  80. The program automagically recognizes which satellite you are listening
  81. to and reads in the appropriate equation file.  This will allow you to
  82. update the files as we refine the equations and not have to replace the
  83. program.  Therefore you must have the files
  84.  
  85. PACSAT
  86. DOVE
  87. WEBER
  88. LUSAT
  89.  
  90. in the current directory on your disk at ALL times, especially if
  91. you are going to `tune around' amongst the different satellites the
  92. first few days.  If you have brought the program up, you will see
  93. data being dumped to the screen when the bird is tuned in.
  94.  
  95. LUSAT -1>TIME  -1 V   UI: PID=F0 
  96. PHT: uptime is 000/13:38:49.  Time is Mon Jan 15 21:21:30 1990
  97. LUSAT -1>TLM   -0 V   UI: PID=F0 
  98. 00:75 01:75 02:7A 03:75 04:7A 05:7D 06:75 07:80 08:7D 09:75 0A:7A
  99. 0B:7D 0C:75 0D:7A 0E:7C 0F:75 10:75 11:75 12:75 13:77 14:75 15:75
  100. 16:7C 17:77 18:75 19:77 1A:7D 1B:75 1C:75 1D:75 1E:75 1F:76 20:75
  101. LUSAT -1>TLM   -0 V   UI: PID=F0 
  102. 21:75 22:77 23:7D 24:75 25:75 26:75 27:75 28:7D 29:75 2A:75 2B:75
  103. 2C:7D 2D:75 2E:80 2F:75 30:75 31:75 32:75 33:75 34:75 35:75 36:7C
  104. 37:75 38:75 39:75 3A:75 3B:7C 3C:75
  105. LUSAT -1>STATUS-0 V   UI: PID=F0 
  106.  00 00 00 80 B0 18 55 03 00 00 00 00 30 00 00 00 00 00 00 00
  107. LUSAT -1>WASH  -0 V   UI: PID=F0 
  108. wash addr:2800:0000, edac=0xc0
  109. LUSAT -1>TIME  -1 V   UI: PID=F0 
  110. PHT: uptime is 000/13:39:00.  Time is Mon Jan 15 21:21:41 1990
  111.  
  112. LUSAT -1>TLM   -0 V   UI: PID=F0 
  113. 00:75 01:78 02:75 03:7A 04:75 05:7A 06:7D 07:78 08:75 09:75 0A:78
  114. 0B:75 0C:7A 0D:75 0E:75 0F:7A 10:75 11:75 12:75 13:75 14:75 15:75
  115. 16:75 17:76 18:75 19:76 1A:75 1B:75 1C:75 1D:75 1E:7D 1F:76 20:75
  116. LUSAT -1>TLM   -0 V   UI: PID=F0 
  117. 21:75 22:75 23:75 24:75 25:75 26:7D 27:75 28:75 29:75 2A:75 2B:75
  118. 2C:75 2D:75 2E:75 2F:75 30:75 31:75 32:7D 33:75 34:75 35:7D 36:75
  119. 37:75 38:75 39:75 3A:7D 3B:75 3C:75
  120. LUSAT -1>STATUS-0 V   UI: PID=F0 
  121.  00 00 00 80 B0 18 55 03 00 00 00 00 30 00 00 00 00 00 00 00
  122. LUSAT -1>WASH  -0 V   UI: PID=F0 
  123. wash addr:2a80:0000, edac=0xc0
  124.  
  125.  
  126. The above is an example of two complete telemetry rounds.
  127.  
  128. uptime is the number of days/hh:mm:ss since the kernal was started.
  129.  
  130. WASH is the output of the memory wash routines, which will correct
  131. errors in the stored memory.
  132.  
  133. STATUS lines output various status bits.  The first three are receiver
  134. digital port bits, the next three are Power module digital port set
  135. bits, and the next three are the transmitter digital port set bits.
  136. The next three are used on DOVE and PACSAT to give the digital port
  137. bits for the DOVE and S band modules respectively.  In the thirteenth
  138. position, the seperation switch is sensed.  If you see this, the high
  139. order bit (0x80) will always be or'd with the byte since the transmitter
  140. won't be on otherwise!
  141.  
  142. UI means it is a UI (unnumbered information) frame.  PID=F0 is the
  143. protocol ID byte and F0 is RTTY-PACKET (a derogatory term for regular
  144. TNC packet). C0 is TCP-IP, etc.  The V followed by a blank means that
  145. there was no digipeater field.  Of course there won't be with the
  146. bird BUT, the algorithm may be used to monitor regular packet and will dump
  147. the other type frames as well.  There just won't be a satellite id'd
  148. or telemetry decoded ;-).
  149.  
  150. If you touch the T key at this time, the screen will be cleared and the
  151. rudimentary telemetry decode, based on the preliminary equations will
  152. occur.  The display is not pretty since I spent my too little time
  153. getting the functionality right.  A really pretty one follows later
  154. from AM$AT ;-).  Touch any key and the program will return to the
  155. main page (possibly after a minor delay in timing out the ax.25 receiver).
  156.  
  157. The status decode will vary from one bird to the other, with some consistency.
  158.  
  159. The TXA means transmitter A and TXB means transmitter B.  0 means off and 1
  160. means ON.  SBT is the S band transmitter.   BCR is the value set on the
  161. digital to analog converter (DAC) in the power module.  This DAC controls
  162. the battery charging rate.
  163.  
  164.  
  165. If you touch the D key (for the first time) the screen will be cleared.
  166. You will be asked for two file names, one for a raw data file and one
  167. for ascii dump.  ASCII dump is what I included above.  RAW is what you
  168. will need for function F.
  169.  
  170. Touching the F key at the main menu, will clear the screen and prompt
  171. you for the name of a RAW telemetry dump file.  It will dump complete
  172. frames at a time, uptime, both telemetry frames, and a status line
  173. and the stand by for you to touch a key.  When the end of file is reached,
  174. the message in the bottom right hand corner changes and says end of file
  175. touch a key and you will be back at the main menu.
  176.  
  177. That's it.
  178.  
  179. The source is largely undocumented and I make no claims to either pretty
  180. or efficient code.  There just wasn't time.  This is a hodge-podge of
  181. stuff that Harold, Hugh, and I did with all the blame for the foul
  182. ups going to me as I made extensive changes.  A much better program follows.
  183. Bug reports to N4HY and I hope you find this usable.
  184.  
  185.  
  186. Bob McGwier, N4HY
  187.